Process model lean notation

ABSTRACT

A process model lean notation provides an easy to understand way to categorize the process elements of a process using a process definition grammar. Process model lean notation allows an organization to rapidly identify the process elements of a process and the interactions between the process elements, and produces a process categorization that includes an ordered sequence of the process elements. A process categorization provides a structured presentation of the process elements and clearly indicates for each process element the task accomplished, the actor responsible for and/or performing the task, the tool that may be used to perform the task, and the work product that may result by performing the task.

BACKGROUND OF THE INVENTION

1. Priority Claim

This application claims the benefit of priority to EPO applicationSerial No. ______, filed on ______.

2. Technical Field

This disclosure concerns a system and method for categorizing a process.In particular, this disclosure relates to a system and method toefficiently identify discrete process elements of a process, and theinteractions between the process elements, in order to produce a processcategorization that includes an ordered sequence of the processelements.

3. Background Information

Organizations continue to face demands for more efficient and effectiveways to analyze, model and improve business processes, while thecomplexity of known business process modeling (BPM) tools grow moresophisticated and resource intensive. Business process engineers oftenrequire significant training, expertise and continued effort to maintainproficiency in the utilization of known BPM tools. Today, organizationshave very little time to digest and comprehend the results produced bysuch complex BPM tools. Consequently, many organizations fail to realizethe benefits of engaging BPM initiatives.

Known BPM tools provide a way to identify and record the processelements of a process, analyze the process element of the process andidentify modifications that may improve the performance of the process.BPM tools identify direct relationships between process elements and therequirements addressed by each process element. BPM tools furtherprovide process performance information that can be examined toquantitatively evaluate the performance of a process.

BPM tools may be categorized into three types, including: processmapping modeling tools; modelers for software development; and modelingtools embedded in BPM systems. Process mapping modeling tools includeMS-Visio®, ProVision Tools® from Proforma Corp., and Business Architect(ARIS)® from IDS Scheer. Modelers for software development includeRational Software Architect® from IBM that is capable of generatingunified modeling language (UML) diagrams. Modeling tools embedded in BPMsystems include Websphere® from IBM that is capable of generatingworkflow applications, Netweaver® from SAP, and Fusion® from ORACLE.Some of the BPM language standards include: business process modelingnotation (BPMN); business process execution language (BPEL), unifiedmodeling language (UML); and the object process methodology (OPM).

Business process modeling notation (BPMN) provides a graphical notationscheme for drawing business processes in a workflow. BPMN furtherprovides a set of graphical elements used to produce business processdiagrams (BPDs). BPMN graphical elements include: flow objects;connecting objects; swimlanes; and artifacts. BPMN models can beambiguous and confusing because the BPDs can be overloaded withinformation and modeling a single business process may result indifferent BPMN notation variations. In other words, for a singlebusiness process multiple different BPMN representations of the processmay result. Communicating BPMN models based on a business processdiagram without additional information is difficult and BPMN does notprovide support for representing process states.

Unified/universal modeling language (UML) provides a standardized visualspecification language for object modeling. UML further provides ageneral-purpose modeling language that includes a graphical notationused to create an abstract model of a system, referred to as a UMLmodel. UML attempts to achieve compatibility with a wide variety ofavailable implementation languages. UML is considered a bloated andcomplex language that contains many diagrams and constructs that makelearning and adopting UML difficult.

Object process methodology (OPM) depicts systems using object models andprocess models. OPM employs a specialized tool called an object-processcase tool to model processes. OPM employs two types of elements:entities that represent elements of a system (i.e., objects, states andprocesses); and links (i.e., structural and procedural). A structurallink represents a relation between two objects. A procedural linkrepresents a link between an object and a process and indicates a changein the state of the object. OPM employs an object process diagram (OPD)to depict links between objects and processes. OPD utilizes three (3)refinement and abstraction mechanisms to handle the complexity of aprocess. The three mechanisms include: (1) zooming in and out; (2)folding and unfolding; and (3) state expression and suppression. OPMalso includes an object process language (OPL) used to translate an OPDinto a natural language text string that may be interpretable by acomputer. OPD imposes a learning curve and investment that manyorganizations may not be positioned to accept.

Organizations often rely on process maps and flow diagrams to inform orupdate members regarding the performance of various components. However,complex BPM tools and languages impose significant resource and trainingrequirements that prevent organizations from quickly and easily learningto use and understand such tools and languages. New members of anorganization, unfamiliar with the processes of the organization, mayfind the mappings and flow diagrams produced by such complex andsophisticated BPM tools too difficult to comprehend.

The difficulties associated with using overly complex BPM tools andlanguages may be compounded by, for example, (1) the amount ofinformation required, (2) the levels of detail required to document eachprocess element, and (3) the intricate techniques used to validate eachprocess element. Known systems and methods of applying businessesprocess modeling principles fail to provide organizations the ability toeconomically and efficiently understand processes of interest and locateprocess flaws. The amount of effort required to define processes usingcomplex business process modeling tools and languages may discourageorganizations from initiating business process modeling projects, andthereby, prevent organizations from realizing the full benefits of BPMinitiatives.

SUMMARY

The disclosed methods and processes for a process model lean notationprovide a simplified process definition grammar. Process definitiongrammar provides an efficient and understandable way to categorize theprocess elements of a process, and thereby model the process. Processmodel lean notation, as indicated by the name, takes a minimalistapproach to defining processes. Process model lean notation addressesmany of the shortcomings imposed by known BPM tools and languages byavoiding using graphical notations, and several categories andsub-categories to define process elements. Process definition grammaremploys a natural language text notation to assign two interrelatedlevels of categorization to each process element of a process. Becauseprocess model lean notation limits process categorizations to twointerrelated levels and utilizes concise natural language text notationfor the process definition grammar, easily understandable processcategorizations can be quickly produced. Each process element within aprocess may be assigned a first process level tag and a correspondingsecond process level tag dictated by the first process level tag. Thefirst level process categories and corresponding second level processcategories are comprehensive, clear and understandable to a person withlittle or no experience using BPM tools. Process definition grammar mayinclude a process element identifier that is a unique alphanumeric valueassigned to each process element that provides a brief description ofthe corresponding process element. The process element identifiercombined with the first process level tag and the second process leveltag assigned to each of the individual process elements of the processcreates an ordered sequence that reflects the order in which processingmay occur for the process.

Process definition grammar may be applied to the process elements of aprocess to produce a process categorization (e.g., a business processmodel) that includes column headings corresponding to the processdefinition grammar, and for each process element, a row entry withvalues corresponding to each column heading. The process categorizationis an easy tool to use and understand to define a process, identifyprocess inefficiencies and refine a process.

The process categorization may be implemented using a spreadsheet andthe functionality of the spreadsheet (e.g., filtering and sorting) maybe used to quickly view and navigate a process categorization. Forexample, using the filtering function of a spreadsheet, a processcategorization can be filtered to only show process elements of aparticular first level tag (e.g., SIPOC). Implementing a processcategorization using a spreadsheet may allow process elements to befiltered based on multiple elements of the process definition grammar.

Other systems, methods, and features of the invention will be, or willbecome, apparent to one with skill in the art, upon examination of thefollowing figures and detailed description. It is intended that all suchadditional systems, methods, features and advantages be included withinthis description, be within the scope of the invention, and be protectedby the following claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure can be better understood with reference to the followingdrawings and description. The components in the figures are notnecessarily to scale, emphasis instead being placed upon illustratingthe principles of the invention. Moreover, in the figures, likereferenced numerals designate corresponding parts or elements throughoutthe different views.

FIG. 1 illustrates an embodiment of a process categorization templatewith column headings.

FIG. 2 illustrates another embodiment of a process categorizationtemplate with column headings.

FIG. 3 illustrates an embodiment of the second process level tags thatinterrelate to the first process level tag of metadata identifier.

FIG. 4 illustrates another embodiment of the second process level tagsthat interrelate to the first process level tag of SIPOC identifier.

FIG. 5 illustrates another embodiment of the second process level tagsthat interrelate to the first process level tag of ‘process’ identifier.

FIG. 6 illustrates another embodiment of the second process level tagsthat correspond to the first process level tag of performanceidentifier.

FIG. 7 illustrates an example of a process categorization for a processthat resolves non-compliance issues.

FIG. 8 illustrates an example of a process categorization for a processthat approves a compliance waiver request.

FIG. 9 a shows the logic flow that may be used to apply processdefinition grammar to categorize the process elements of a process.

FIG. 9 b illustrates an example of a process categorization for a patentfiling process for a company.

FIG. 9 c further illustrates the example of a process categorization fora patent filing process for a company.

FIG. 10 illustrates an embodiment of a process model lean notationsystem as a component of a process model lean notation systemconfiguration.

FIG. 11 illustrates another embodiment of process model lean notationmemory with process definition grammar logic.

FIG. 12 illustrates another embodiment of process model lean notationmemory with the process categorization.

DETAILED DESCRIPTION

Process model lean notation may be implemented in numerous ways,including as a method, a system, and stored on a computer readablemedium and executable by a processor in communication with the computerreadable medium. Process model lean notation provides a processdefinition grammar that employs two interrelated process levelcategories used to assign each process element a first process level tagand an interrelated second process level tag. Process definition grammaralso provides a process element identifier that together with the firstprocess level tag and the second process level tag assigned to theprocess elements of a process creates an ordered sequence that reflectsthe order in which processing may occur for the process.

Process definition grammar includes first process level tags thatrepresent high-level process categories (first level process categories)in which a process element may be categorized. The first process leveltags represent or correspond to the first level process categories: (1)metadata; (2) supplier-input-process-output-customer (SIPOC); (3)process; (4) performance; and (5) methodology. The first level processcategories are intended and/or defined to be comprehensive, clear andeasily understandable to a person with little or no experience using BPMtools and languages. The first level process categories, in turn, eachcorrespond to interrelated second level process sub-categories. Thesecond process level tags represent or correspond to the second levelprocess sub-categories that interrelate to the first level processcategories.

The (1) metadata category interrelates to sub-categories, topics and/ordata about a process, including: an owner; a version; a release date; anauthor; revision history; and/or a policy related to the process. Themetadata category provides a way to categorize process elements thatimprove the understanding, characteristics, and management of data abouta process. These sub-categories, topics and/or data correspond to thesecond level process tags which, in turn, correspond to a specific firstlevel process tag indicated by the metadata category.

The (2) SIPOC category interrelates to sub-categories, topics and/ordata that represent a supplier, input, a requirement of the input, anoutput, a requirement of the output, and/or a customer of the process.The SIPOC category employs the elements of a tool used in the Six Sigmamethodology referred to as a SIPOC diagram, also known as a high levelprocess map that is used to identify all the relevant elements of aprocess improvement project before work begins. These sub-categories,topics and/or data correspond to the second level process tags which, inturn, correspond to a specific first level process tag indicated by theSIPOC category.

The (3) ‘process’ category interrelates to sub-categories, topics and/ordata that represent a type of logical processing, including: sequential;conditional; loop; a process call; a process state; and/or a processstate change. These sub-categories, topics and/or data correspond to thesecond level process tags which, in turn, correspond to a specific firstlevel process tag indicated by the ‘process’ category.

The (4) performance category interrelates to sub-categories, topicsand/or data that represent a performance goal, a performance factor, anauxiliary performance measurement, a performance measurement, and/or aperformance factor-measurement relationship. These sub-categories,topics and/or data correspond to the second level process tags which, inturn, correspond to a specific first level process tag indicated by theperformance category.

The (5) methodology category interrelates to sub-categories, topicsand/or data that represent an element of a methodology. For example, amethodology may specify certain requisite activities for a process, theevidence of which a process element assigned that methodology categorymay represent. These sub-categories, topics and/or data correspond tothe second level process tags which, in turn, correspond to a specificfirst level process tag indicated by the Methodology category.

Process model lean notation also provides a workflow aspect thatindicates, for each process element, an actor responsible for: a taskbeing performed to produce a work product; a machine used to produce thework product; the work product expected as a result of completing thetask; and the task.

FIG. 1 illustrates an embodiment of a process categorization template100 with column headings corresponding to the process definitiongrammar, including: ‘first and second process level tags’ 102; ‘processelement identifier’ 104; ‘actor role identifier’ 106, ‘machineidentifier’ 108; ‘work product identifier’ 110; ‘process elementcomplete (PEC) indicator’ 112; and ‘task identifier’ 114. FIG. 1 furtherillustrates, under the ‘first and second process level tags’ 102 columnheading, the first process level tag and second process level tagcombinations corresponding to first level process categories of:metadata 302 (e.g., 116, 118, 120, 122, 124, and 126); a methodologyidentifier 128; and a process 602 (e.g., 130, 132, 134, 136, 138, 140,and 142).

FIG. 2 illustrates another embodiment of a process categorizationtemplate 200 that includes, under the ‘first and second process leveltags’ 102 column heading, first process level tag and second processlevel tag combinations corresponding to first level process categoriesof: SIPOC 402 (e.g., 202, 204, 206, 208, 210, 212, 214 and 216); andperformance 502 (e.g., 218, 220, 222, 224, and 226). Each row entrycorresponding to the column headings of the process categorizationtemplate (e.g., 102, 104, 106, 108, 110, 112, and 114) may bepre-configured so that the values are presented in a pull-down menulist.

Referring briefly to FIGS. 9 a, 9 b and 9 c. FIG. 9 a illustrates anexemplary logic flow 900 a that may be used to apply process definitiongrammar to categorize the process elements of a process. For eachprocess element, a first process level tag may be assigned (902) and aninterrelated second process level tag based on the first process leveltag may be assigned (904). A process element identifier may be assignedto each process element (906). An actor role identifier, work productidentifier, machine identifier, and the task identifier may be assignedto each process element (908). Where no additional process elements areidentified for categorization, the process categorization of the processelements includes an ordered sequence of the process elements (910).

FIGS. 9 b and 9 c illustrate an example of a process categorization fora patent filing process for a company. The task identifiers (e.g.,912-924 and 929-941) provide a short description of each process elementof the patent filing process for the company. Pseudo code may be used asthe task identifiers values to describe the logical processing of theprocess elements of a process. Each process element may be assigned afirst process level tag and a second process level tag (e.g., 942-954and 955-967). Each process element may be further assigned a processelement identifier (e.g., 968-974 and 975-976).

The patent filing process, as categorized, may be identified by thetitle “patent filing process” 968 and the owner of this process may beidentified by the company name 969. The patent filing process 968 may bedeveloped and refined through multiple versions (e.g., version 01.) 970.The release date 971 of the version 970 may be expressed as a date(e.g., mm/dd/yyyy). The patent filing process 968 may have one or moreauthors 972. The patent filing process 968 may correspond to aparticular company policy, for example, a disclosure requirement 973policy that requires invention disclosures be submitted to the company'sintellectual property department. The patent filing process 968 mayidentify an inventor 974 as a supplier to the patent filing process 968,and the inputs to the process may include ideas 919, that are novel andnon-obvious 920. The patent filing process 968 includes documenting anidea 921, submitting the idea in a disclosure form 922, reviewing thedisclosure form 923, drafting a patent application 924 and reviewing andsigning the patent application 929.

An actor role identifier (e.g., 977-978), machine identifier (e.g.,983-986) and work product identifier (e.g., 989-992) may be assigned toeach process element. An attorney 977 may use an email software 983application to send an email 989 to the inventor 978 (e.g., inventorname 974) to review the disclosure. During the course of preparing thepatent application, while clarifications are needed 931, additionaldocumentation may be needed 932. The inventor 978 may use an authoringtool 984 to produce additional documents 990. The inventor 978 maysubmit the additional documentation 934 using the email software 983application to send the additional documentation in an email 989 to theattorney 977. The attorney 977 may use a meeting scheduling software 985application to schedule a disclosure review meeting 935 with theinventor and the meeting scheduling software may produce a meetingidentifier 991 that the inventor and attorney use to participate in themeeting. The attorney 977 and inventor 978 may use the telephone 986 toconduct the disclosure review meeting 936 and the meeting may result inaction items 992 for the attorney and/or inventor. The attorney 977 mayuse the email software 983 application to send a report of thedisclosure review meeting in an email 989. When no more clarificationsare needed 938, the patent application is filed with the patent office939, and the company 975 (e.g., the customer and beneficiary of thepatent filing process 940) receives a patent application filing receipt976 from the patent office 941.

FIGS. 3 through 8, discussed below, correspond and provide additionaldetails, embodiments and descriptions of the process definition grammarutilized and discussed in connection with FIGS. 9 a through 9 c.

Returning to FIG. 3, an embodiment of the second process level tags 300that interrelate to the first process level tag of metadata identifier302 is illustrated. A process element assigned the metadata identifier302 indicates that the process element represents data about thecorresponding process. A second process level tag interrelating to themetadata identifier 302 may be assigned to a process element from thegroup consisting of: an owner identifier 304; a version identifier 306;a release identifier 308; an author identifier 310; a revision historyidentifier 312; and a policy identifier 314.

The owner identifier 304 corresponds to a process element thatidentifies an owner of the process. The owner of a process may beidentified as a person, a team, a department within an organization,system and another process. A process element assigned the first processlevel tag of metadata identifier 302 and second process level tag ofowner identifier 304 may be identified by the process model leannotation of Meta.Owner 116.

The version identifier 306 may be assigned to a process element thatidentifies the current version of the process being categorized. Aprocess element assigned the first process level tag of metadataidentifier 302 and second process level tag of version identifier 306may be identified by the process model lean notation of Meta.Version120.

The release identifier 308 may be assigned to a process element thatidentifies the release date of the current version of the process beingcategorized so that the version identifier 306 and the releaseidentifier 308 correspond. A process element assigned the first processlevel tag of metadata identifier 302 and second process level tag ofrelease identifier 308 may be identified by the process model leannotation of Meta.Rel 118.

The author identifier 310 may be assigned to process elements thatidentify the author(s) of the process being categorized. The authoridentifier 310 may be assigned to multiple process elements according tothe number of authors of the process being categorized. A processelement assigned the first process level tag of metadata identifier 302and second process level tag of author identifier 310 may be identifiedby the process model lean notation of Meta.Author 122.

The revision history identifier 312 may be assigned to each processelement that identifies a revision history summary for a related releaseof the process being categorized. For example, for each process elementassigned a release identifier 308, a corresponding process element maybe assigned a revision history identifier 312. A process elementassigned the first process level tag of metadata identifier 302 andsecond process level tag of revision history identifier 312 may beidentified by the process model lean notation of Meta.RevHistory 124.

The policy identifier 314 may be assigned to each process element thatidentifies a policy corresponding to the process being categorized. Aprocess element assigned the first process level tag of metadataidentifier 302 and second process level tag of policy identifier 314 maybe identified by the process model lean notation of Meta.Policy 126. Theprocess categorization may include process elements assigned themetadata identifier 302 in any particular order.

FIG. 4 illustrates another embodiment of the second process level tags400 that interrelate to the first process level tag of SIPOC identifier402. A process element assigned the SIPOC identifier 402 indicates thatthe process element represents a supplier, input, a requirement of theinput, an output, a requirement of the output, and/or a customer of theprocess. A second process level tag that corresponds to the SIPOCidentifier 402 may be assigned to a process element from the groupconsisting of: a SIPOC process identifier 404, a supplier identifier406, input identifier 408, input requirement identifier 410, outputidentifier 412, output requirement identifier 414 and a customeridentifier 416.

The SIPOC process identifier 404 may be assigned to a process elementthat identifies the process. A process element assigned the firstprocess level tag of SIPOC identifier 402 and the second process leveltag of SIPOC process identifier 404 may be identified by the processmodel lean notation of SIPOC.ProcID 202. A first process elementassigned the first process level tag of SIPOC identifier 402 and thesecond process level tag of SIPOC process identifier 404 (e.g.,SIPOC.ProcID 202) may precede a second process element assigned thefirst process level tag of SIPOC identifier 402 and any other of thesecond process level tags that interrelate to the first process leveltag of SIPOC identifier 402.

The supplier identifier 406 may be assigned to each process element thatidentifies a supplier to a corresponding SIPOC process. A processelement assigned the first process level tag of SIPOC identifier 402 andthe second process level tag of supplier identifier 406 may beidentified by the process model lean notation of SIPOC.Supp 204.

The input identifier 408 may be assigned to each process element thatcorresponds to an input from a supplier identified by a process elementassigned the supplier identifier 406. A process element assigned thefirst process level tag of SIPOC identifier 402 and the second processlevel tag of input identifier 408 may be identified by the process modellean notation of SIPOC.In 206. A first process element assigned thefirst process level tag of SIPOC identifier 402 and the second processlevel tag of supplier identifier 406 (e.g., SIPOC.Supp 204) may befollowed by a second process element assigned the first process leveltag of SIPOC identifier 402 and the second process level tag of inputidentifier 408 (e.g., SIPOC.In 206).

The input requirement identifier 410 may be assigned to each processelement that corresponds to a requirement for an input from a supplierto a corresponding SIPOC process. A process element assigned the firstprocess level tag of SIPOC identifier 402 and the second process leveltag of input requirement identifier 410 may be identified by the processmodel lean notation of SIPOC.InReq 208.

The output identifier 412 may be assigned to each process element thatcorresponds to an output from a corresponding SIPOC process. A processelement assigned the first process level tag of SIPOC identifier 402 andthe second process level tag of output identifier 412 may be identifiedby the process model lean notation of SIPOC.Out 214.

The output requirement identifier 414 may be assigned to each processelement that corresponds to a requirement for an output from acorresponding SIPOC process. A process element assigned the firstprocess level tag of SIPOC identifier 402 and the second process leveltag of output requirement identifier 414 may be identified by theprocess model lean notation of SIPOC.OutReq 216.

The customer identifier 416 may be assigned to each process element thatcorresponds to a customer of a SIPOC process. The customer of a SIPOCprocess may include a person, team, a department within an organization,system and another process. A process element assigned the first processlevel tag of SIPOC identifier 402 and the second process level tag ofcustomer identifier 416 may be identified by the process model leannotation of SIPOC.Cust 212. A first process element assigned the firstprocess level tag of SIPOC identifier 402 and the second process leveltag of customer identifier 416 (e.g., SIPOC.Cust 212) may be followed bya second process element assigned the first process level tag of SIPOCidentifier 402 and the second process level tag of output identifier 412(e.g., SIPOC.Out 210).

FIG. 5 illustrates another embodiment of the second process level tags500 that interrelate to the first process level tag of ‘process’identifier 502. A process element assigned the process identifier 502indicates that the process element represents a type of logicalprocessing, including: sequential; conditional; loop; a process call; aprocess state; and a process state change. A second process level tagthat corresponds to the process identifier 502 may be assigned to aprocess element from the group consisting of: a sequence identifier 504,a condition identifier 506, loop identifier 508, process call identifier510, process state identifier 512, and process state change identifier514. A first process element assigned the first process level tag ofSIPOC identifier 402 and the second process level tag of inputrequirement identifier 410 (e.g., SIPOC.InReq 208) may be followed by asecond process element assigned the first process level tag of processidentifier 502 and any other second process level tag that interrelatesto the first process level tag of process identifier 502.

The sequence identifier 504 may be assigned to each process element thatidentifies sequential processing performed by a process. A processelement assigned the first process level tag of process identifier 502and the second process level tag of sequence identifier 504 may beidentified by the process model lean notation of Proc.Seq 130.

The condition identifier 506 may be assigned to each process elementthat corresponds to conditional processing performed by a process. Aprocess element assigned the first process level tag of processidentifier 502 and the second process level tag of condition identifier506 may be identified by the process model lean notation of Proc.Cond132. A first process element assigned the first process level tag ofprocess identifier 502 and the second process level tag of conditionidentifier 506 (e.g., Proc.Cond 132) may be followed by a second processelement assigned the first process level tag of process identifier 502and the second process level tag of sequence identifier 504 (e.g.,Proc.Seq 130).

The loop identifier 508 may be assigned to each process element thatcorresponds to iterative processing (e.g., a “for loop” or “do whileloop”) performed by a process. A process element assigned the firstprocess level tag of process identifier 502 and the second process leveltag of loop identifier 508 may be identified by the process model leannotation of Proc.Loop 134. A first process element assigned the firstprocess level tag of process identifier 502 and the second process leveltag of loop identifier 508 (e.g., Proc.Loop 134) may be followed by atleast one process element assigned the first process level tag ofprocess identifier 502 and any other second process level tag thatinterrelates to the first process level tag of process identifier 502.

The process call identifier 510 may be assigned to each process elementthat corresponds to a call to a second process and/or a sub-process of afirst process. A first process element assigned the first process leveltag of process identifier 502 and the second process level tag ofprocess call identifier 510 may be identified by the process model leannotation of Proc.Call 136.

The process state identifier 512 may be assigned to each process elementthat corresponds to state information (e.g., the context of processing)for the process being categorized. The process state identifier 512corresponds to a process element that identifies and/or establishes thecontext in which processing is performed by a process. A first processelement assigned the first process level tag of process identifier 502and the second process level tag of process state identifier 512 may beidentified by the process model lean notation of Proc.State 140. A firstprocess element assigned the first process level tag of processidentifier 502 and the second process level tag of process stateidentifier 512 (e.g., Proc.State 140) may be followed by at least oneprocess element assigned the first process level tag of processidentifier 502 and the second process level tag of sequence identifier504 (e.g., Proc.Seq 130).

The process state change identifier 514 may be assigned to each processelement that corresponds to state change information for a process. Aprocess element assigned the process state change identifier 514 may beidentified by the process model lean notation of Proc.StateChg 142. Afirst process element assigned the first process level tag of processidentifier 502 and the second process level tag of process state changeidentifier 514 (e.g., Proc.StateChg 142) may precede at least oneprocess element assigned the first process level tag of processidentifier 502 and the second process level tag of process stateidentifier 512 (e.g., Proc.State 140).

The process state identifier 512 and process state change identifier 514provide a way to define the automata of a process (e.g., a statemachine). The process state identifier 512 reflects the context underwhich processing occurs until a condition and/or event result in a statechange reflected by the process state change identifier 514. The processelements, process state identifiers 512 and/or a process state changeidentifiers 514 of a process may be analyzed to identify an optimalnumber of states (e.g., minimize the number of states) and processelements necessary to perform the functions of the process.

Table 1 illustrates an example of a process identified as a ‘checkstatus’ process that includes eight (8) process elements. Each line ofTable 1 may represent a process element of the process ‘check status’ towhich the process definition grammar of the process model lean notationmay be applied. Line 1 of Table 1 may be categorized as a process statethat indicates the context in which succeeding process elements perform.Line 2 of Table 1 may be categorized as a first conditional processelement, while lines 3 and 4 may be categorized as sequential processelements corresponding to the first conditional process element of line2. Line 5 of Table 1 may be categorized as a second conditional processelement corresponding to the first conditional process element, and line6 may be categorized as a sequential process element corresponding tothe second conditional process element of line 5. Line 7 of Table 1 maybe categorized as a third conditional process element corresponding tothe first and second conditional process elements, and line 8 may becategorized as a process state change that indicates that the contexthas changed.

TABLE 1 Process Elements for a Check Status Process 1Check_Changed_Status := True; 2 If Status_Changed = True then 3 Evaluate_Status_Value; 4  Clear_Status_Value; 5 Else 6 Set_Status_Value; 7 End if 8 Check_Changed_Status := False;

Table 2 illustrates first process level tag and second process level tagcombinations and process element identifiers assigned to the processelements of the process shown in Table 1. Table 2 illustrates that thefirst process level tag and second process level tag together with theprocess element identifier create an ordered sequence of processelements. Table 2 illustrates that multiple process elements may beassigned the first process level tag and second process level tagcombinations of Proc.Seq (e.g., lines 3, 4 and 6), while a processelement identifier that conforms to a naming convention (e.g.,SD_Condition1_Sequence1, SD_Condition1_Sequence2 andSD_Condition2_Sequence1) combined with the first process level tag andsecond process level tag combinations create an ordered sequence ofprocess elements. Table 2 further illustrates that multiple processelements assigned the first process level tag and second process leveltag combinations of Proc.Cond (e.g., lines 2, 5 and 7) and processelement identifiers that conform to a naming convention (e.g.,SD_Condition1, SD_Condition2 and SD_Condition3) create an orderedsequence of process elements. Table 2 also illustrates that where atleast one process element is assigned the first process level tag andsecond process level tag combination of Proc.State and a process elementidentifier that conforms to a naming convention (e.g.,State_Description) another process element assigned the first processlevel tag and second process level tag combination of Proc.StateChg anda process element identifier that conforms to that naming convention(e.g., SD_State_Chg_Description) creates an ordered sequence of processelements. The process element identifier, together with the firstprocess level tag and second process level tag, create an orderedsequence of process elements that reflects the order in which processingmay occur for a process.

TABLE 2 Ordered Sequence of Process Elements First and Second ProcessLevel Tags Process element identifier 1 Proc.State State_Description(SD) 2 Proc.Cond SD_Condition1 3 Proc.Seq SD_Condition1_Sequence1 4Proc.Seq SD_Condition1_Sequence2 5 Proc.Cond SD_Condition2 6 Proc.SeqSD_Condition2_Sequence1 7 Proc.Cond SD_Condition3 8 Proc.StateChgSD_State_Chg_Description

FIG. 6 illustrates another embodiment of the second process level tags600 that correspond to the first process level tag of performanceidentifier 602. A process element assigned the performance identifier602 indicates that the process element represents a performance goal, aperformance factor, an auxiliary performance measurement, a performancemeasurement, and/or a performance factor-measurement relationship. Asecond process level tag that interrelates to the first process leveltag of performance identifier 602 may be assigned to a process elementfrom the group consisting of: a performance goal 604; a performancefactor 606; an auxiliary performance measurement 608; a performancemeasurement 610; and a performance factor-measurement relationship 612.

The performance goal 604 may be assigned to each process element thatidentifies a performance goal (e.g., target performance) for a process.A process element assigned the first process level tag of performanceidentifier 602 and the second process level tag of performance goal 604may be identified by the process model lean notation of Perf.Goal 220.

The performance factor 606 may be assigned to each process element thatcorresponds to a factor related to the performance of a process. Aprocess element assigned the first process level tag of performanceidentifier 602 and the second process level tag of performance factor606 may be identified by the process model lean notation of Perf.X 222.

The auxiliary performance measurement 608 may be assigned to eachprocess element that identifies an intermediate performance measurementof the output of a process. The auxiliary performance measurement 608may be assigned to each process element that identifies an intermediateperformance measurement of the output of a sub-process of a process. Aprocess element assigned the first process level tag of performanceidentifier 602 and the second process level tag of auxiliary performancemeasurement 608 may be identified by the process model lean notation ofPerf.Aux 224.

The performance measurement 610 may be assigned to each process elementthat corresponds to the performance measurement of the output of aprocess. The performance measurement 610 may be assigned to each processelement that corresponds to the performance measurement of the output ofa sub-process to a process. A process element assigned the first processlevel tag of performance identifier 602 and the second process level tagof performance measurement 610 may be identified by the process modellean notation of Perf.Y 218.

The performance factor-measurement relationship 612 may be assigned toeach process element that identifies relationship information betweenperformance factors, auxiliary performance measurements and performancemeasurements corresponding to a process. A process element assigned thefirst process level tag of performance identifier 602 and the secondprocess level tag of performance factor-measurement relationship 612 maybe identified by the process model lean notation of Perf.F(X) 226. Afirst process element assigned the first process level tag ofperformance identifier 602 and the second process level tag ofperformance factor 606 (e.g., Perf.X 222) may be followed by a secondprocess element corresponding to the same process assigned the firstprocess level tag of performance identifier 602 and the second processlevel tag of performance factor-measurement relationship 610 (e.g.,Perf.F(x) 226).

A process element assigned the first process level tag of methodologyidentifier 128 indicates that the process element represents an elementof a methodology. A process element assigned the first process level tagof Methodology identifier 128 may be assigned a second process level tagof null value. The first process level tag of Methodology identifier 128may refer to any number of methodologies (e.g., Capability MaturityModel® Integration (CMMI), Six Sigma, PmBok®, and Lean methodology). Forexample, a process element that maps to the Capability Maturity Model®Integration (CMMI) methodology may be assigned a first process level tagof ‘CMMI’ and a null value for the second process level tag. A processelement assigned the first process level tag of methodology identifier128 may be assigned a non-null value for the second process level tagbased on the methodology identified by the methodology identifier 128and/or the preference of the user.

In one implementation, the Methodology identifier 128 comprises thevalue ‘methodology’ for the first process level tag so that processelements that correspond to any methodology may be easily identified(e.g., filtering process elements in a categorization based on the firstprocess level tag value of ‘methodology’). The second process level tagof a process element, assigned the methodology identifier 128 value‘methodology’ for the first process level tag, may refer to a specificmethodology (e.g., Capability Maturity Model® Integration (CMMI), SixSigma, PmBok®, and Lean methodology). For example, a first processelement that maps to the Capability Maturity Model® Integration (CMMI)methodology may be assigned a first process level tag value of‘methodology’ and a second process level tag value of ‘CMMI’. While asecond process element that maps to the Six Sigma® methodology may beassigned a first process level tag value of ‘methodology’ and a secondprocess level tag value of ‘SixSigma’. The process categorization can befiltered to show only those process elements corresponding tomethodologies (e.g., any methodology) because the first process elementand the second process element are assigned the first process level tagvalue of ‘methodology’. The ability to filter process elements accordingto whether the process elements correspond to methodologies provides away to perform detailed analysis and identify possibleinterrelationships between process elements and various methodologies.

Although process definition grammar may be applied so that processelements assigned the same first process level tag create an orderedsequence of process elements, process elements assigned different firstprocess level tags may not correspond to any particular orderedsequence. For example, a process categorization may include a firstprocess element assigned the metadata identifier 302 and a secondprocess element assigned the SIPOC identifier 402 with no restriction asto the order in which the first process element and second processelement are presented. However, a process categorization may reflect afirst process level tag preference so that process elements assigneddifferent first process level tags correspond to a preferred orderedsequence. For example, process elements assigned the metadata identifier302 may precede other process elements assigned the SIPOC identifier 402in a process categorization, in order to create a preferred orderedsequence of process elements.

FIG. 7 illustrates an example of a process categorization 700 for aprocess that resolves non-compliance issues. The ordered sequence ofprocess elements includes a first process element assigned the firstprocess level tag and second process level tag combination Proc.Loop 702(e.g., the process identifier 502 and the loop identifier 508), aprocess element identifier 704 of “non-compliance loop 1”, and a taskidentifier 706 value of “for each identified non-compliance issue”. Theprocess element categorized by 702-704-706 indicates that the processelement corresponds to a “for loop”.

The next process element, in the ordered sequence of process elements,is assigned the first process level tag and second process level tagcombination Proc.State 708 (e.g., the process identifier 502 and theprocess state identifier 512), a process element identifier 710 of“solving1”, and a task identifier 712 of “resolution of non-compliance”712. The process element categorized by 708-710-712 indicates that theprocess element identifies and/or establishes the context (e.g.,“solving”) in which related process elements perform.

The next process element is assigned the first process level tag andsecond process level tag combination Proc.Seq 714 (e.g., the processidentifier 502 and the sequence identifier 504), a process elementidentifier 716 of “solving_seq1”, the actor role identifier 718 of“Actor 3”, the machine identifier 720 of process element machines (PEM),the work product identifier 722 of “defect 1”, and a task identifier 724of “define the action to be performed”. The process element categorizedby 714-716-718-720-722-724 indicates that “Actor 3” is responsible forthe tasks performed using the PEM to produce the “defect 1” workproduct.

The first process element assigned the first process level tag andsecond process level tag combination Proc.State 708 and a processelement identifier 710 of “solving1” followed by the second processelement assigned the first process level tag and second process leveltag combination Proc.Seq 714 and a process element identifier 716“solving1_seq1” creates an ordered sequence. Where multiple processelements are assigned the same first process level tag and secondprocess level tag combination (e.g., “Proc.Seq” 714, 726, 730, and 734),process element identifiers that conform to a naming convention (e.g.,‘solving1_seq1’ 716, ‘solving1_seq2’ 728, ‘solving1_seq2’ 732, and‘solving1_seq2’ 736) create an ordered sequence of process elements. Thefirst process element assigned the first process level tag and secondprocess level tag combination Proc.StateChg 746 is preceded by at leastone other process element assigned the first process level tag andsecond process level tag combination Proc.State (e.g., 708 and 738).Where a first process element and a second process element are assignedthe first process level tag and second process level tag combinationProc.Loop (e.g., 702 and 762), process element identifiers that conformto a naming convention (e.g., “non-compliance_loop1” 704 and“non-compliance_loop2” 764) create an ordered sequence of processelements.

FIG. 8 illustrates an example of a process categorization 800 for aprocess that approves a compliance waiver request. The ordered sequenceof process elements includes a first process element assigned the firstprocess level tag and second process level tag combination Proc.State802 (e.g., the process identifier 502 and process state identifier 512),a process element identifier 804 of “waiver requested 1”, and a taskidentifier 806 of “compliance waiver requested”. The process elementcategorized by 802-804-806 indicates that the process element identifiesand/or establishes the context (e.g., “waiver requested”) in whichrelated process elements perform.

The next process element is assigned the first process level tag andsecond process level tag combination Proc.Cond 808 (e.g., the processidentifier 502 and the condition identifier 506), a process elementidentifier 810 of “waiver requested conditional 1”, and a taskidentifier 812 of “if waiver requires approval”. The process elementcategorized by 808-810-812 indicates that the process elementcorresponds to conditional processing where approval of a waiver may berequired.

The first process element assigned Proc.Cond 808 and a process elementidentifier 810 of “waiver conditional 1” followed by the second processelement assigned the first process level tag and second process leveltag combination Proc.Seq 814 and a process element identifier 816 of“waiver conditional 1 sequence 1” creates an ordered sequence. Wheremultiple process elements are assigned the same first process level tagand second process level tag combination (e.g., Proc.Seq 814, 818, and826), process element identifiers that conform to a naming convention(e.g., ‘waiver conditional 1 sequence 1’ 816, ‘waiver conditional 1sequence 2’ 820, and ‘waiver conditional 2 sequence 1’ 828) create anordered sequence of process elements. Where multiple process elementsare assigned the same first process level tag and second process leveltag combination (e.g., Proc.Cond 808, 822, and 830), process elementidentifiers that conform to a naming convention (e.g., ‘waiverconditional 1’ 810, ‘waiver conditional 2’ 824, and ‘waiver conditional3’ 832) create an ordered sequence of process elements.

FIG. 10 illustrates an embodiment of a process model lean notationsystem 1002 as a component of a process model lean notation systemconfiguration 1000. Process model lean notation system configuration1000 may further include process elements machines (PEM) 1004, SIPOCsystems 1006, and performance management systems 1008. The processelements machines (PEM) 1004 may include electronic and non-electronictools such as e-mail applications and systems, and productivity systemsand applications. Process model lean notation system configuration 1000may further include various repositories and/or databases, including arepository of process categorizations 1010 where process categorizationsare stored for later retrieval and use, methodologies repository 1012and work product repository 1014. The various components of the processmodel lean notation system configuration 1000 may be connected to anetwork 1016 (e.g., the Internet). Process model lean notation system1002 includes a processor 1018, a communication interface 1020 and amemory 1022 used to communicate to the various components of the processmodel lean notation system configuration 1000. The memory 1022 mayinclude process definition grammar logic 1024, a process categorization1026 and a user interface 1028 used to view and manipulate the processcategorization 1026. The processor 1018 is operable to execute theprocess definition grammar logic 1024 to produce the processcategorization 1026. A user may apply the process definition grammarlogic 1024 to each process element of a process to produce the processcategorization 1026.

The process definition grammar logic 1024 may communicate with the SIPOCsystems 106 to receive the process elements corresponding to the SIPOCidentifier 402. Process definition grammar logic 1024 may communicatewith the performance management systems 1008 to receive the processelements corresponding to the performance identifier 502. Theperformance management systems 1008 may include enterprise resourcemanagement, project management and various activity monitoring systems.

FIG. 11 illustrates another embodiment of process model lean notationmemory 1100 with process definition grammar logic 1024. Processdefinition grammar logic 1024 includes first process level tags 1102,second process level tags 1104 and process element attributes 1106.Process definition grammar logic 1024 determines a first level processcategory and an interrelated second level process sub-category for eachprocess element and assigns a corresponding first process level tag 1102and an interrelated second process level tag 1104 to each of the processelements of a process.

For example, the first process level tag of methodology identifier 128identifies process elements that map to a methodology (e.g., the firstlevel process category), while an interrelated second process level tagcorresponding to the first process level tag of methodology identifier128 may include any second level process sub-category of the methodologyidentified by the methodology identifier 128 (e.g., methodology 2^(nd)process level tag 1108). Process definition grammar logic 1024 maycommunicate with the methodologies repository 1012 to receive theprocess elements assigned the first process level tag of methodologyidentifier 128 and the second process level tag of methodology 2^(nd)process level tag 1108.

Process definition grammar logic 1024 may assign each process element aprocess element identifier 1110. The process element identifier 1110 maycomprise a unique alphanumeric value that provides a brief descriptionof the corresponding process element. Process definition grammar logic1024 may assign, for each process element, an actor role identifier1112, work product identifier 1114, machine identifier 1116, and taskidentifier 1118.

The process elements machines (PEM) 1004 may interact with the workproduct repository 1014 to generate work product, and store and retrievework product identified by the work product identifier 1114. Processdefinition grammar logic 1024 may receive the value of each work productidentifier 1114 from the work product repository 1014.

Process definition grammar logic 1024 may assign a value (e.g.,“verified” and “complete”) to a process element confirmation (PEC)indicator 1120, for each process element, that confirms verificationand/or execution of the corresponding process element. A user may reviewthe process categorization 1026 to verify each process element and usethe user interface 1028 to update the PEC indicator 1120 with a value(e.g., “verified”, “complete” and/or the initials of the personcompleting and/or verifying the process element) for each correspondingprocess element. Process definition grammar logic 1024 may, for eachprocess element, update the PEC indicator 1120 with a value (e.g.,“verified”, “complete” and/or the initials of the person completingand/or verifying the process element) based on validating thecorresponding process element attributes 1106 using information receivedfrom the systems (e.g., 1004, 1006 and 1008) and repositories (e.g.,1010, 1012, and 1014). The PEC indicator 1120 may include a defaultvalue (e.g., “unverified” and “incomplete”) so that process elementsthat have not been verified can be quickly identified.

FIG. 12 illustrates another embodiment of process model lean notationmemory 1200 with the process categorization 1026. The processcategorization 1026 includes an ordered sequence of process elements1202. Process definition grammar logic 1024 may use the first processlevel tag 1102 and second process level tag 1103 together with theprocess element identifier 1110 to create the ordered sequence ofprocess elements 1202. Process model lean notation system 1002 receivesprocess elements (e.g., first process element (FPE) 1204, second processelement (SPE) 1206, and Nth process element (NPE) 1208) that define aprocess. Process definition grammar logic 1024 may use the processcategorization 1026 to generate a process mapping of the process.Process definition grammar logic 1024 may complete the ordered sequenceof process elements 1202 once process definition grammar logic 1024assigns each of the process elements of a process a first process leveltag 1102 (e.g., 1210, 1212 and 1214), a second process level tag 1104(e.g., 1216, 1218 and 1220), the process element attributes 1106 (e.g.,1222, 1224 and 1226) and in particular the process element identifier1110 (e.g., 1228,1230 and 1232).

The systems may be implemented in many different ways. For example,although some features are shown as computer program products embodiedas a signal or data stream and/or stored in computer-readable memories(e.g., as logic implemented as computer-executable instructions or asdata structures in memory), all or part of the systems, logic, and datastructures may be stored on, distributed across, or read from othermachine-readable media. The media may include hard disks, floppy disks,CD-ROMs, a signal, such as a signal received from a network orpartitioned into sections and received in multiple packets communicatedacross a network. The systems may be implemented in software, hardware,or a combination of software and hardware. The files, schemas, andmessages used by the systems may employ formats that are different fromthe formats described above.

Furthermore, the systems may be implemented with additional, different,or fewer components. As one example, a processor or any other logic maybe implemented with a microprocessor, a microcontroller, a DSP, anapplication specific integrated circuit (ASIC), program instructions,discrete analogue or digital logic, or a combination of other types ofcircuits or logic. As another example, memories may be DRAM, SRAM, Flashor any other type of memory. The systems may be distributed amongmultiple components, such as among multiple processors and memories,optionally including multiple distributed processing systems. Logic,such as programs or circuitry, may be combined or split among multipleprograms, distributed across several memories and processors, and may beimplemented in or as a function library, such as a dynamic link library(DLL) or other shared library.

While various embodiments of the process model lean notation have beendescribed, it will be apparent to those of ordinary skill in the artthat many more embodiments and implementations are possible within thescope of the invention. Accordingly, the invention is not to berestricted except in light of the attached claims and their equivalents.

1. A method for categorizing a process using a process definitiongrammar, the method comprising: assigning a first process level tag anda second process level tag to each process element that defines aprocess, where the second process level tag is based on the firstprocess level tag, where the first process level tag is from a groupconsisting of: a metadata identifier; asupplier-input-process-output-customer (SIPOC) identifier; a processidentifier; a performance identifier; and a methodology identifier;where the second process level tag corresponding to the metadataidentifier of the first process level tag is from a group consisting of:an owner identifier; a version identifier; a release identifier; anauthor identifier; a revision history identifier; and a policyidentifier; where the second process level tag corresponding to theSIPOC identifier of the first process level tag is from a groupconsisting of: a supplier identifier; an input identifier; an inputrequirement identifier; an output identifier; an output requirementidentifier; and a customer identifier; where the second process leveltag corresponding to the process identifier of the first process leveltag is from a group consisting of: a sequence identifier; a conditionidentifier; a loop identifier; a process call identifier; a processstate identifier; and a process state change identifier; where thesecond process level tag corresponding to the performance identifier ofthe first process level tag is from a group consisting of: a performancegoal; a performance factor; an auxiliary performance measurement; aperformance measurement; and a performance factor-measurementrelationship; and assigning, for each of the process elements, a processelement identifier comprising a unique alphanumeric value to create anordered sequence of the process elements.
 2. The method of claim 1,further comprising assigning, for each of the process elements: an actorrole identifier that identifies an actor involved in producing a workproduct for the process element, a machine identifier that identifies atool used by the actor to produce the work product, a work productidentifier that identifies the work product that is obtained as a resultof the actor using the tool; and a task identifier that identifies atask to be performed.
 3. The method of claim 1, wherein for each of thefirst process level tags, the corresponding second process level tagsand process element identifiers in combination indicate the orderedsequence of the process elements corresponding to the first processlevel tag.
 4. The method of claim 1, wherein the ordered sequenceincludes a first process element assigned the process identifier and thecondition identifier followed by a second process element assigned theprocess identifier and the sequence identifier.
 5. The method of claim4, wherein the ordered sequence includes a third process elementassigned the process identifier and the process state identifierfollowed by at least one process element assigned the process identifierand the sequence identifier.
 6. The method of claim 5, wherein theordered sequence includes a fourth process element assigned the processidentifier and the process state change identifier that precedes atleast one process element assigned the process identifier and theprocess state identifier.
 7. The method of claim 3, wherein the orderedsequence includes a first process element assigned the processidentifier and the loop identifier followed by at least one processelement assigned the process identifier.
 8. The method of claim 3,wherein the ordered sequence includes a first process element assignedthe SIPOC identifier and the input requirement identifier followed by asecond process element assigned the first process level tag of processidentifier.
 9. The method of claim 3, wherein the ordered sequenceincludes a first process element assigned the SIPOC identifier and thesupplier identifier followed by a second process element assigned theSIPOC identifier and the input identifier.
 10. The method of claim 3,wherein the ordered sequence includes a first process element assignedthe SIPOC identifier and the customer identifier followed by a secondprocess element assigned the SIPOC identifier and the output identifier.11. The method of claim 3, wherein the second process level tagcorresponding to the SIPOC identifier of the first process level tag isfrom the group further consisting of: a SIPOC process identifier; andwherein the ordered sequence includes a first process element assignedthe SIPOC identifier and the SIPOC process identifier followed by asecond process element assigned the SIPOC identifier.
 12. A product forcategorizing a process using a process definition grammar, the productcomprising: a processor; a machine readable medium in communication withthe processor; logic stored on the medium and executable by theprocessor to: assign a first process level tag and a second processlevel tag to each process element that defines a process, where thesecond process level tag is based on the first process level tag, wherethe first process level tag is from a group consisting of: a metadataidentifier; a supplier-input-process-output-customer (SIPOC) identifier;a process identifier; a performance identifier; and a methodologyidentifier; where the second process level tag corresponding to themetadata identifier of the first process level tag is from a groupconsisting of: an owner identifier; a version identifier; a releaseidentifier; an author identifier; a revision history identifier; and apolicy identifier; where the second process level tag corresponding tothe SIPOC identifier of the first process level tag is from a groupconsisting of: a supplier identifier; an input identifier; an inputrequirement identifier; an output identifier; an output requirementidentifier; and a customer identifier; where the second process leveltag corresponding to the process identifier of the first process leveltag is from a group consisting of: a sequence identifier; a conditionidentifier; a loop identifier; a process call identifier; a processstate identifier; and a process state change identifier; where thesecond process level tag corresponding to the performance identifier ofthe first process level tag is from a group consisting of: a performancegoal; a performance factor; an auxiliary performance measurement; aperformance measurement; and a performance factor-measurementrelationship; and assign, for each of the process elements, a processelement identifier to create an ordered sequence of the processelements.
 13. The product of claim 12, the logic further executable toassign for each of the process elements: an actor role identifier thatidentifies an actor involved in producing a work product for the processelement; a machine identifier that identifies a tool used by the actorto produce the work product; a work product identifier that identifiesthe work product that is obtained as a result of the actor using thetool; and a task identifier that identifies a task to be performed. 14.The product of claim 12, wherein the ordered sequence of the processelements corresponds to the first process level tag, the second processlevel tag and process element identifier in combination.
 15. The productof claim 12, wherein the logic is further executable to assign a firstprocess element the process identifier and the condition identifierfollowed by a second process element assigned the process identifier andthe sequence identifier.
 16. The product of claim 15, wherein the logicis further executable to assign a third process element the processidentifier and the process state identifier followed by at least oneprocess element assigned the process identifier and the sequenceidentifier.
 17. The product of claim 16, wherein the logic is furtherexecutable to assign a fourth process element the process identifier andthe process state change identifier that precedes at least one processelement assigned the process identifier and the process stateidentifier.
 18. The product of claim 14, wherein the logic is furtherexecutable to assign a first process element the process identifier andthe loop identifier followed by at least one process element assignedthe process identifier.
 19. The product of claim 14, wherein the logicis further executable to assign a first process element the SIPOCidentifier and the input requirement identifier followed by a secondprocess element assigned the first process level tag of processidentifier.
 20. The product of claim 14, wherein the logic is furtherexecutable to assign a first process element the SIPOC identifier andthe supplier identifier followed by a second process element assignedthe SIPOC identifier and the input identifier.
 21. The product of claim14, wherein the logic is further executable to assign a first processelement the SIPOC identifier and the customer identifier followed by asecond process element assigned the SIPOC identifier and the outputidentifier.
 22. The product of claim 14, wherein the logic is furtherexecutable to: assign the second process level tag corresponding to theSIPOC identifier of the first process level tag from the group furtherconsisting of: a SIPOC process identifier; wherein the ordered sequenceincludes a first process element assigned the SIPOC identifier and theSIPOC process identifier followed by a second process element assignedthe SIPOC identifier.
 23. A method for categorizing a process using aprocess definition grammar, the method comprising: assigning a firstprocess level tag and a second process level tag to each process elementthat defines a process, where the second process level tag based on thefirst process level tag; and assigning, for each of the processelements, a process element identifier comprising a unique alphanumericvalue to create an ordered sequence of the process elements.
 24. Themethod of claim 23, where the first process level tag is from a groupconsisting of: a metadata identifier; asupplier-input-process-output-customer (SIPOC) identifier; a processidentifier; a performance identifier; and a methodology identifier. 25.The method of claim 24, where: the second process level tagcorresponding to the metadata identifier of the first process level tagis from a group consisting of: an owner identifier; a versionidentifier; a release identifier; an author identifier; a revisionhistory identifier; and a policy identifier; the second process leveltag corresponding to the SIPOC identifier of the first process level tagis from a group consisting of: a supplier identifier; an inputidentifier; an input requirement identifier; an output identifier; anoutput requirement identifier; and a customer identifier; the secondprocess level tag corresponding to the process identifier of the firstprocess level tag is from a group consisting of: a sequence identifier;a condition identifier; a loop identifier; a process call identifier; aprocess state identifier; and a process state change identifier; and thesecond process level tag corresponding to the performance identifier ofthe first process level tag is from a group consisting of: a performancegoal; a performance factor; an auxiliary performance measurement; aperformance measurement; and a performance factor-measurementrelationship.